package com.milling.business.service;

import java.util.List;
import com.milling.business.domain.WmsTaskInfo;
import com.milling.business.domain.WmsTxnInfo;

/**
 * 任务工单Service接口
 *
 * @author X
 * @date 2025-02-27
 */
public interface IWmsTaskInfoService
{
    /**
     * 查询任务工单
     *
     * @param taskId 任务工单主键
     * @return 任务工单
     */
    public WmsTaskInfo selectWmsTaskInfoByTaskId(String taskId);

    /**
     * 查询任务工单列表
     *
     * @param wmsTaskInfo 任务工单
     * @return 任务工单集合
     */
    public List<WmsTaskInfo> selectWmsTaskInfoList(WmsTaskInfo wmsTaskInfo);

    /**
     * 新增任务工单
     *
     * @param wmsTaskInfo 任务工单
     * @return 结果
     */
    public int insertWmsTaskInfo(WmsTaskInfo wmsTaskInfo);

    /**
     * 修改任务工单
     *
     * @param wmsTaskInfo 任务工单
     * @return 结果
     */
    public int updateWmsTaskInfo(WmsTaskInfo wmsTaskInfo);

    /**
     * 批量删除任务工单
     *
     * @param taskIds 需要删除的任务工单主键集合
     * @return 结果
     */
    public int deleteWmsTaskInfoByTaskIds(String[] taskIds);

    /**
     * 删除任务工单信息
     *
     * @param taskId 任务工单主键
     * @return 结果
     */
    public int deleteWmsTaskInfoByTaskId(String taskId);

    public String processBindDrillinfo(WmsTxnInfo wmsTxnInfo);

    public void genWmsTaskInfo(String macCode, String taskType, Long configId, Long configSubId, String drillInfo, String fullType, Integer drillCount, Integer boxId, String feedingHoles);

    public void feedingMixV();

    public void feedingFull();

    public void write505();

    public void process511();

    public void process512();

    public void write800();

    public void process557();

    public void process554();
}
